home *** CD-ROM | disk | FTP | other *** search
- ' +----------------------------------------------------------------------+
- ' | |
- ' | PBClone Copyright (c) 1990-1993 Thomas G. Hanlin III |
- ' | |
- ' +----------------------------------------------------------------------+
-
- DECLARE SUB StripChar (St$, Ch$, StLen%)
-
- FUNCTION ForceMatch$(Pattern$, SourceFile$)
- a$ = Pattern$
- GOSUB Regularize
- Pat$ = a$
- a$ = SourceFile$
- GOSUB Regularize
- Src$ = a$
- FOR tmp% = 1 TO 12
- IF MID$(Pat$, tmp%, 1) = "?" THEN
- Result$ = Result$ + MID$(Src$, tmp%, 1)
- ELSE
- Result$ = Result$ + MID$(Pat$, tmp%, 1)
- END IF
- NEXT
- StripChar Result$, " ", tmp%
- ForceMatch$ = LEFT$(Result$, tmp%)
- EXIT FUNCTION
-
- Regularize:
- t% = INSTR(a$, ".")
- IF t% THEN
- l$ = LEFT$(a$, t% - 1)
- r$ = MID$(a$, t% + 1)
- ELSE
- l$ = a$
- r$ = ""
- END IF
- l$ = LEFT$(l$, 8)
- r$ = LEFT$(r$, 3)
- t% = INSTR(l$, "*")
- IF t% THEN l$ = LEFT$(l$, t% - 1) + STRING$(9 - t%, "?")
- t% = INSTR(r$, "*")
- IF t% THEN r$ = LEFT$(r$, t% - 1) + STRING$(4 - t%, "?")
- a$ = LEFT$(l$ + SPACE$(8), 8) + "." + LEFT$(r$ + SPACE$(3), 3)
- RETURN
- END FUNCTION
-